package com.ygqh.baby.po;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author Ss
 */
public class YgVoteWorkExample {
	protected String orderByClause;

	protected boolean distinct;

	protected List<Criteria> oredCriteria;

	public YgVoteWorkExample() {
		oredCriteria = new ArrayList<Criteria>();
	}

	public void setOrderByClause(String orderByClause) {
		this.orderByClause = orderByClause;
	}

	public String getOrderByClause() {
		return orderByClause;
	}

	public void setDistinct(boolean distinct) {
		this.distinct = distinct;
	}

	public boolean isDistinct() {
		return distinct;
	}

	public List<Criteria> getOredCriteria() {
		return oredCriteria;
	}

	public void or(Criteria criteria) {
		oredCriteria.add(criteria);
	}

	public Criteria or() {
		Criteria criteria = createCriteriaInternal();
		oredCriteria.add(criteria);
		return criteria;
	}

	public Criteria createCriteria() {
		Criteria criteria = createCriteriaInternal();
		if (oredCriteria.size() == 0) {
			oredCriteria.add(criteria);
		}
		return criteria;
	}

	protected Criteria createCriteriaInternal() {
		Criteria criteria = new Criteria();
		return criteria;
	}

	public void clear() {
		oredCriteria.clear();
		orderByClause = null;
		distinct = false;
	}

	protected abstract static class GeneratedCriteria {
		protected List<Criterion> criteria;

		protected GeneratedCriteria() {
			super();
			criteria = new ArrayList<Criterion>();
		}

		public boolean isValid() {
			return criteria.size() > 0;
		}

		public List<Criterion> getAllCriteria() {
			return criteria;
		}

		public List<Criterion> getCriteria() {
			return criteria;
		}

		protected void addCriterion(String condition) {
			if (condition == null) {
				throw new RuntimeException("Value for condition cannot be null");
			}
			criteria.add(new Criterion(condition));
		}

		protected void addCriterion(String condition, Object value, String property) {
			if (value == null) {
				throw new RuntimeException("Value for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value));
		}

		protected void addCriterion(String condition, Object value1, Object value2, String property) {
			if (value1 == null || value2 == null) {
				throw new RuntimeException("Between values for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value1, value2));
		}

		public Criteria andIdIsNull() {
			addCriterion("id is null");
			return (Criteria) this;
		}

		public Criteria andIdIsNotNull() {
			addCriterion("id is not null");
			return (Criteria) this;
		}

		public Criteria andIdEqualTo(Long value) {
			addCriterion("id =", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotEqualTo(Long value) {
			addCriterion("id <>", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThan(Long value) {
			addCriterion("id >", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThanOrEqualTo(Long value) {
			addCriterion("id >=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThan(Long value) {
			addCriterion("id <", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThanOrEqualTo(Long value) {
			addCriterion("id <=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdIn(List<Long> values) {
			addCriterion("id in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotIn(List<Long> values) {
			addCriterion("id not in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdBetween(Long value1, Long value2) {
			addCriterion("id between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotBetween(Long value1, Long value2) {
			addCriterion("id not between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeIsNull() {
			addCriterion("vote_batch_code is null");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeIsNotNull() {
			addCriterion("vote_batch_code is not null");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeEqualTo(String value) {
			addCriterion("vote_batch_code =", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeNotEqualTo(String value) {
			addCriterion("vote_batch_code <>", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeGreaterThan(String value) {
			addCriterion("vote_batch_code >", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeGreaterThanOrEqualTo(String value) {
			addCriterion("vote_batch_code >=", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeLessThan(String value) {
			addCriterion("vote_batch_code <", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeLessThanOrEqualTo(String value) {
			addCriterion("vote_batch_code <=", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeLike(String value) {
			addCriterion("vote_batch_code like", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeNotLike(String value) {
			addCriterion("vote_batch_code not like", value, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeIn(List<String> values) {
			addCriterion("vote_batch_code in", values, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeNotIn(List<String> values) {
			addCriterion("vote_batch_code not in", values, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeBetween(String value1, String value2) {
			addCriterion("vote_batch_code between", value1, value2, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andVoteBatchCodeNotBetween(String value1, String value2) {
			addCriterion("vote_batch_code not between", value1, value2, "voteBatchCode");
			return (Criteria) this;
		}

		public Criteria andUserIdIsNull() {
			addCriterion("user_id is null");
			return (Criteria) this;
		}

		public Criteria andUserIdIsNotNull() {
			addCriterion("user_id is not null");
			return (Criteria) this;
		}

		public Criteria andUserIdEqualTo(Long value) {
			addCriterion("user_id =", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdNotEqualTo(Long value) {
			addCriterion("user_id <>", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdGreaterThan(Long value) {
			addCriterion("user_id >", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdGreaterThanOrEqualTo(Long value) {
			addCriterion("user_id >=", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdLessThan(Long value) {
			addCriterion("user_id <", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdLessThanOrEqualTo(Long value) {
			addCriterion("user_id <=", value, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdIn(List<Long> values) {
			addCriterion("user_id in", values, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdNotIn(List<Long> values) {
			addCriterion("user_id not in", values, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdBetween(Long value1, Long value2) {
			addCriterion("user_id between", value1, value2, "userId");
			return (Criteria) this;
		}

		public Criteria andUserIdNotBetween(Long value1, Long value2) {
			addCriterion("user_id not between", value1, value2, "userId");
			return (Criteria) this;
		}

		public Criteria andUserNameIsNull() {
			addCriterion("user_name is null");
			return (Criteria) this;
		}

		public Criteria andUserNameIsNotNull() {
			addCriterion("user_name is not null");
			return (Criteria) this;
		}

		public Criteria andUserNameEqualTo(String value) {
			addCriterion("user_name =", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotEqualTo(String value) {
			addCriterion("user_name <>", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameGreaterThan(String value) {
			addCriterion("user_name >", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameGreaterThanOrEqualTo(String value) {
			addCriterion("user_name >=", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLessThan(String value) {
			addCriterion("user_name <", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLessThanOrEqualTo(String value) {
			addCriterion("user_name <=", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLike(String value) {
			addCriterion("user_name like", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotLike(String value) {
			addCriterion("user_name not like", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameIn(List<String> values) {
			addCriterion("user_name in", values, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotIn(List<String> values) {
			addCriterion("user_name not in", values, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameBetween(String value1, String value2) {
			addCriterion("user_name between", value1, value2, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotBetween(String value1, String value2) {
			addCriterion("user_name not between", value1, value2, "userName");
			return (Criteria) this;
		}

		public Criteria andBabyNameIsNull() {
			addCriterion("baby_name is null");
			return (Criteria) this;
		}

		public Criteria andBabyNameIsNotNull() {
			addCriterion("baby_name is not null");
			return (Criteria) this;
		}

		public Criteria andBabyNameEqualTo(String value) {
			addCriterion("baby_name =", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameNotEqualTo(String value) {
			addCriterion("baby_name <>", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameGreaterThan(String value) {
			addCriterion("baby_name >", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameGreaterThanOrEqualTo(String value) {
			addCriterion("baby_name >=", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameLessThan(String value) {
			addCriterion("baby_name <", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameLessThanOrEqualTo(String value) {
			addCriterion("baby_name <=", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameLike(String value) {
			addCriterion("baby_name like", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameNotLike(String value) {
			addCriterion("baby_name not like", value, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameIn(List<String> values) {
			addCriterion("baby_name in", values, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameNotIn(List<String> values) {
			addCriterion("baby_name not in", values, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameBetween(String value1, String value2) {
			addCriterion("baby_name between", value1, value2, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyNameNotBetween(String value1, String value2) {
			addCriterion("baby_name not between", value1, value2, "babyName");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlIsNull() {
			addCriterion("baby_image_url is null");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlIsNotNull() {
			addCriterion("baby_image_url is not null");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlEqualTo(String value) {
			addCriterion("baby_image_url =", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlNotEqualTo(String value) {
			addCriterion("baby_image_url <>", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlGreaterThan(String value) {
			addCriterion("baby_image_url >", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlGreaterThanOrEqualTo(String value) {
			addCriterion("baby_image_url >=", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlLessThan(String value) {
			addCriterion("baby_image_url <", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlLessThanOrEqualTo(String value) {
			addCriterion("baby_image_url <=", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlLike(String value) {
			addCriterion("baby_image_url like", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlNotLike(String value) {
			addCriterion("baby_image_url not like", value, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlIn(List<String> values) {
			addCriterion("baby_image_url in", values, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlNotIn(List<String> values) {
			addCriterion("baby_image_url not in", values, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlBetween(String value1, String value2) {
			addCriterion("baby_image_url between", value1, value2, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andBabyImageUrlNotBetween(String value1, String value2) {
			addCriterion("baby_image_url not between", value1, value2, "babyImageUrl");
			return (Criteria) this;
		}

		public Criteria andDescriptionIsNull() {
			addCriterion("description is null");
			return (Criteria) this;
		}

		public Criteria andDescriptionIsNotNull() {
			addCriterion("description is not null");
			return (Criteria) this;
		}

		public Criteria andDescriptionEqualTo(String value) {
			addCriterion("description =", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionNotEqualTo(String value) {
			addCriterion("description <>", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionGreaterThan(String value) {
			addCriterion("description >", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
			addCriterion("description >=", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionLessThan(String value) {
			addCriterion("description <", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionLessThanOrEqualTo(String value) {
			addCriterion("description <=", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionLike(String value) {
			addCriterion("description like", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionNotLike(String value) {
			addCriterion("description not like", value, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionIn(List<String> values) {
			addCriterion("description in", values, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionNotIn(List<String> values) {
			addCriterion("description not in", values, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionBetween(String value1, String value2) {
			addCriterion("description between", value1, value2, "description");
			return (Criteria) this;
		}

		public Criteria andDescriptionNotBetween(String value1, String value2) {
			addCriterion("description not between", value1, value2, "description");
			return (Criteria) this;
		}

		public Criteria andCheckStatusIsNull() {
			addCriterion("check_status is null");
			return (Criteria) this;
		}

		public Criteria andCheckStatusIsNotNull() {
			addCriterion("check_status is not null");
			return (Criteria) this;
		}

		public Criteria andCheckStatusEqualTo(String value) {
			addCriterion("check_status =", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusNotEqualTo(String value) {
			addCriterion("check_status <>", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusGreaterThan(String value) {
			addCriterion("check_status >", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusGreaterThanOrEqualTo(String value) {
			addCriterion("check_status >=", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusLessThan(String value) {
			addCriterion("check_status <", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusLessThanOrEqualTo(String value) {
			addCriterion("check_status <=", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusLike(String value) {
			addCriterion("check_status like", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusNotLike(String value) {
			addCriterion("check_status not like", value, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusIn(List<String> values) {
			addCriterion("check_status in", values, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusNotIn(List<String> values) {
			addCriterion("check_status not in", values, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusBetween(String value1, String value2) {
			addCriterion("check_status between", value1, value2, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andCheckStatusNotBetween(String value1, String value2) {
			addCriterion("check_status not between", value1, value2, "checkStatus");
			return (Criteria) this;
		}

		public Criteria andVoteCountIsNull() {
			addCriterion("vote_count is null");
			return (Criteria) this;
		}

		public Criteria andVoteCountIsNotNull() {
			addCriterion("vote_count is not null");
			return (Criteria) this;
		}

		public Criteria andVoteCountEqualTo(Long value) {
			addCriterion("vote_count =", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountNotEqualTo(Long value) {
			addCriterion("vote_count <>", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountGreaterThan(Long value) {
			addCriterion("vote_count >", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountGreaterThanOrEqualTo(Long value) {
			addCriterion("vote_count >=", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountLessThan(Long value) {
			addCriterion("vote_count <", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountLessThanOrEqualTo(Long value) {
			addCriterion("vote_count <=", value, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountIn(List<Long> values) {
			addCriterion("vote_count in", values, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountNotIn(List<Long> values) {
			addCriterion("vote_count not in", values, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountBetween(Long value1, Long value2) {
			addCriterion("vote_count between", value1, value2, "voteCount");
			return (Criteria) this;
		}

		public Criteria andVoteCountNotBetween(Long value1, Long value2) {
			addCriterion("vote_count not between", value1, value2, "voteCount");
			return (Criteria) this;
		}

		public Criteria andQrCodeIsNull() {
			addCriterion("qr_code is null");
			return (Criteria) this;
		}

		public Criteria andQrCodeIsNotNull() {
			addCriterion("qr_code is not null");
			return (Criteria) this;
		}

		public Criteria andQrCodeEqualTo(String value) {
			addCriterion("qr_code =", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeNotEqualTo(String value) {
			addCriterion("qr_code <>", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeGreaterThan(String value) {
			addCriterion("qr_code >", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeGreaterThanOrEqualTo(String value) {
			addCriterion("qr_code >=", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeLessThan(String value) {
			addCriterion("qr_code <", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeLessThanOrEqualTo(String value) {
			addCriterion("qr_code <=", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeLike(String value) {
			addCriterion("qr_code like", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeNotLike(String value) {
			addCriterion("qr_code not like", value, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeIn(List<String> values) {
			addCriterion("qr_code in", values, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeNotIn(List<String> values) {
			addCriterion("qr_code not in", values, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeBetween(String value1, String value2) {
			addCriterion("qr_code between", value1, value2, "qrCode");
			return (Criteria) this;
		}

		public Criteria andQrCodeNotBetween(String value1, String value2) {
			addCriterion("qr_code not between", value1, value2, "qrCode");
			return (Criteria) this;
		}

		public Criteria andRemarkIsNull() {
			addCriterion("remark is null");
			return (Criteria) this;
		}

		public Criteria andRemarkIsNotNull() {
			addCriterion("remark is not null");
			return (Criteria) this;
		}

		public Criteria andRemarkEqualTo(String value) {
			addCriterion("remark =", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkNotEqualTo(String value) {
			addCriterion("remark <>", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkGreaterThan(String value) {
			addCriterion("remark >", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkGreaterThanOrEqualTo(String value) {
			addCriterion("remark >=", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkLessThan(String value) {
			addCriterion("remark <", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkLessThanOrEqualTo(String value) {
			addCriterion("remark <=", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkLike(String value) {
			addCriterion("remark like", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkNotLike(String value) {
			addCriterion("remark not like", value, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkIn(List<String> values) {
			addCriterion("remark in", values, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkNotIn(List<String> values) {
			addCriterion("remark not in", values, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkBetween(String value1, String value2) {
			addCriterion("remark between", value1, value2, "remark");
			return (Criteria) this;
		}

		public Criteria andRemarkNotBetween(String value1, String value2) {
			addCriterion("remark not between", value1, value2, "remark");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNull() {
			addCriterion("create_time is null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNotNull() {
			addCriterion("create_time is not null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeEqualTo(Date value) {
			addCriterion("create_time =", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotEqualTo(Date value) {
			addCriterion("create_time <>", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThan(Date value) {
			addCriterion("create_time >", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
			addCriterion("create_time >=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThan(Date value) {
			addCriterion("create_time <", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
			addCriterion("create_time <=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIn(List<Date> values) {
			addCriterion("create_time in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotIn(List<Date> values) {
			addCriterion("create_time not in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeBetween(Date value1, Date value2) {
			addCriterion("create_time between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
			addCriterion("create_time not between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateByIsNull() {
			addCriterion("create_by is null");
			return (Criteria) this;
		}

		public Criteria andCreateByIsNotNull() {
			addCriterion("create_by is not null");
			return (Criteria) this;
		}

		public Criteria andCreateByEqualTo(String value) {
			addCriterion("create_by =", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByNotEqualTo(String value) {
			addCriterion("create_by <>", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByGreaterThan(String value) {
			addCriterion("create_by >", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByGreaterThanOrEqualTo(String value) {
			addCriterion("create_by >=", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByLessThan(String value) {
			addCriterion("create_by <", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByLessThanOrEqualTo(String value) {
			addCriterion("create_by <=", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByLike(String value) {
			addCriterion("create_by like", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByNotLike(String value) {
			addCriterion("create_by not like", value, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByIn(List<String> values) {
			addCriterion("create_by in", values, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByNotIn(List<String> values) {
			addCriterion("create_by not in", values, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByBetween(String value1, String value2) {
			addCriterion("create_by between", value1, value2, "createBy");
			return (Criteria) this;
		}

		public Criteria andCreateByNotBetween(String value1, String value2) {
			addCriterion("create_by not between", value1, value2, "createBy");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeIsNull() {
			addCriterion("update_time is null");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeIsNotNull() {
			addCriterion("update_time is not null");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeEqualTo(Date value) {
			addCriterion("update_time =", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeNotEqualTo(Date value) {
			addCriterion("update_time <>", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeGreaterThan(Date value) {
			addCriterion("update_time >", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
			addCriterion("update_time >=", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeLessThan(Date value) {
			addCriterion("update_time <", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
			addCriterion("update_time <=", value, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeIn(List<Date> values) {
			addCriterion("update_time in", values, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeNotIn(List<Date> values) {
			addCriterion("update_time not in", values, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeBetween(Date value1, Date value2) {
			addCriterion("update_time between", value1, value2, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
			addCriterion("update_time not between", value1, value2, "updateTime");
			return (Criteria) this;
		}

		public Criteria andUpdateByIsNull() {
			addCriterion("update_by is null");
			return (Criteria) this;
		}

		public Criteria andUpdateByIsNotNull() {
			addCriterion("update_by is not null");
			return (Criteria) this;
		}

		public Criteria andUpdateByEqualTo(String value) {
			addCriterion("update_by =", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByNotEqualTo(String value) {
			addCriterion("update_by <>", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByGreaterThan(String value) {
			addCriterion("update_by >", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByGreaterThanOrEqualTo(String value) {
			addCriterion("update_by >=", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByLessThan(String value) {
			addCriterion("update_by <", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByLessThanOrEqualTo(String value) {
			addCriterion("update_by <=", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByLike(String value) {
			addCriterion("update_by like", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByNotLike(String value) {
			addCriterion("update_by not like", value, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByIn(List<String> values) {
			addCriterion("update_by in", values, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByNotIn(List<String> values) {
			addCriterion("update_by not in", values, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByBetween(String value1, String value2) {
			addCriterion("update_by between", value1, value2, "updateBy");
			return (Criteria) this;
		}

		public Criteria andUpdateByNotBetween(String value1, String value2) {
			addCriterion("update_by not between", value1, value2, "updateBy");
			return (Criteria) this;
		}

		public Criteria andStatusIsNull() {
			addCriterion("status is null");
			return (Criteria) this;
		}

		public Criteria andStatusIsNotNull() {
			addCriterion("status is not null");
			return (Criteria) this;
		}

		public Criteria andStatusEqualTo(String value) {
			addCriterion("status =", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotEqualTo(String value) {
			addCriterion("status <>", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThan(String value) {
			addCriterion("status >", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThanOrEqualTo(String value) {
			addCriterion("status >=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThan(String value) {
			addCriterion("status <", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThanOrEqualTo(String value) {
			addCriterion("status <=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLike(String value) {
			addCriterion("status like", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotLike(String value) {
			addCriterion("status not like", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusIn(List<String> values) {
			addCriterion("status in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotIn(List<String> values) {
			addCriterion("status not in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusBetween(String value1, String value2) {
			addCriterion("status between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotBetween(String value1, String value2) {
			addCriterion("status not between", value1, value2, "status");
			return (Criteria) this;
		}
	}

	public static class Criteria extends GeneratedCriteria {

		protected Criteria() {
			super();
		}
	}

	public static class Criterion {
		private String condition;

		private Object value;

		private Object secondValue;

		private boolean noValue;

		private boolean singleValue;

		private boolean betweenValue;

		private boolean listValue;

		private String typeHandler;

		public String getCondition() {
			return condition;
		}

		public Object getValue() {
			return value;
		}

		public Object getSecondValue() {
			return secondValue;
		}

		public boolean isNoValue() {
			return noValue;
		}

		public boolean isSingleValue() {
			return singleValue;
		}

		public boolean isBetweenValue() {
			return betweenValue;
		}

		public boolean isListValue() {
			return listValue;
		}

		public String getTypeHandler() {
			return typeHandler;
		}

		protected Criterion(String condition) {
			super();
			this.condition = condition;
			this.typeHandler = null;
			this.noValue = true;
		}

		protected Criterion(String condition, Object value, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.typeHandler = typeHandler;
			if (value instanceof List<?>) {
				this.listValue = true;
			} else {
				this.singleValue = true;
			}
		}

		protected Criterion(String condition, Object value) {
			this(condition, value, null);
		}

		protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.secondValue = secondValue;
			this.typeHandler = typeHandler;
			this.betweenValue = true;
		}

		protected Criterion(String condition, Object value, Object secondValue) {
			this(condition, value, secondValue, null);
		}
	}
}